import { createRouter, createWebHistory,createWebHashHistory } from 'vue-router'
import { useUserStore } from '@/stores'

//createRouter创建路由实例
//配置history模式
//history模式， createWebHistory   地址栏没有#
//hash模式，   createWebHashHistory
// console.log(import.meta.env.DEV);开发环境
const router = createRouter({
	//meta.env.BASE_URL是vite.config.js文件中的base:''
  history: createWebHistory(import.meta.env.BASE_URL),
  routes: [
		//老师这种把Import写在这里面的用法。。。。。
		{path:'/login',component:()=>import('@/views/login/LoginPage.vue')},//登录页
		{
			path:'/',
			component:()=>import('@/views/layout/LayoutContainer.vue'),
			redirect:'/article/manage',   //当访问/这个路径时自动访问下面的/article/manage目录
			children:[
				{path:'/article/manage',component:()=>import('@/views/article/ArticleManage.vue')},
				{path:'/article/channel',component:()=>import('@/views/article/ArticleChannel.vue')},
				{path:'/user/profile',component:()=>import('@/views/user/UserProfile.vue')},
				{path:'/user/avatar',component:()=>import('@/views/user/UserAvatar.vue')},
				{path:'/user/password',component:()=>import('@/views/user/UserPassword.vue')}
			]
		}//根目录首页架子
		
  ]
})

//登录访问拦截=>默认是直接放行的
//根据返回值决定，是放行还是拦截
//返回值：
//1.undefined/true直接放行
//2.false拦回from的地址页面
//3.具体路径或者路径对象   拦截到对应的地址
router.beforeEach((to,from)=>{
	// return false
	//如果没有token且访问的是非登录页面，拦截到登录，其他情况正常放行
	const useStore=useUserStore()
	// useStore.setToken=''
	if(!useStore.token && to.path!=='/login') return '/login'
})
export default router
